package com.hmy.finance.service.receipt;

import com.hmy.finance.service.receipt.dto.contactorAccount.ContactorExpensesDto;
import com.hmy.finance.service.receipt.dto.contactorAccount.ContactorIncomeDto;
import com.hmy.finance.service.receipt.dto.contactorAccount.TransferDto;
import com.hmy.finance.service.receipt.dto.customerAccount.CustomerExpensesDto;
import com.hmy.finance.service.receipt.dto.customerAccount.CustomerIncomeDto;
import com.hmy.finance.service.receipt.rdto.TradeRdto;

public interface IncomeExpensesService {

    /**
     * 客户余额账户入账
     *
     * @param customerIncomeDto 入账信息
     * @return 入账结果
     * @author songkf
     */
    public TradeRdto incomeBalance(CustomerIncomeDto customerIncomeDto);

    /**
     * 客户余额账户支出
     */
    public TradeRdto expensesBalance(CustomerExpensesDto customerExpensesDto);

    /**
     * 联系人账户入账
     *
     * @param contactorIncomeDto 入账参数
     * @return 入账结果
     * @author songkf
     */
    public TradeRdto incomeBalance(ContactorIncomeDto contactorIncomeDto);

    /**
     * 联系人账户支出
     *
     * @param contactorExpensesDto 支出参数
     * @return 支出结果
     * @author songkf
     */
    public TradeRdto expensesBalance(ContactorExpensesDto contactorExpensesDto);

    /**
     * 客户账户划拨余额到联系人账户
     *
     * @param transferDto - 划拨参数
     * @return 划拨结果
     * @author songkf
     */
    public Boolean transferBalance(TransferDto transferDto);
}
